/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * Comprobante_compra_productos.java
 *
 * Created on 15/06/2009, 01:36:21 AM
 */

package Compras;
import General.Operario;
import javax.swing.JPanel;
import Control.Conexion;
import javax.swing.JOptionPane;
/**
 *
 * @author GAMA
 */
public class Mantenimiento_servicios extends javax.swing.JPanel {
    Operario frmOperario;

    JPanel pnlNuevo_servicio;
    int bandera=0;
    Integer codigo_usuario_auditoria=0;

    /** Creates new form Comprobante_compra_productos */
    public Mantenimiento_servicios() {
        initComponents();
    }
    public Mantenimiento_servicios(Operario frmOperario,Integer codigo_usuario_auditoria) {
        initComponents();
        this.codigo_usuario_auditoria=codigo_usuario_auditoria;
        this.frmOperario=frmOperario;
        inicializar_tabla_servicios();

    }
    public void eliminar_servicio(){
    String cod;
         if(tblServicios.getSelectedRow()!=-1){
                int rpta=msgmarticuloConfirmacion("¿Esta seguro que desea eliminar la seleccion?");
                if(rpta==0)
                {
                    cod=tblServicios.getValueAt(tblServicios.getSelectedRow(),0).toString();
                    Conexion c=new Conexion();
                    c.setMantenimientoServicios(this);
                    c.eliminar_servicio(codigo_usuario_auditoria,cod);
                    this.inicializar_tabla_servicios();
                }

         }else{
                    JOptionPane.showMessageDialog(this,"Debe seleccionar un elemento de la tabla","Información", JOptionPane.WARNING_MESSAGE);
                }


    }

        public int  msgmarticuloConfirmacion(String msg){
        Object[] opciones = {"Si", "No","Cancelar"};
        int n = JOptionPane.showOptionDialog(this,
                                    msg,
                                    "Información",
                                    JOptionPane.YES_NO_OPTION,
                                    JOptionPane.QUESTION_MESSAGE,
                                    null,
                                    opciones,
                                    opciones[2]);
       return n;
    }
    public void inicializar_tabla_servicios(){
         Conexion c=new Conexion();
         tblServicios.setModel(c.cargar_servicios());
     }
    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jButton3 = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        tblServicios = new javax.swing.JTable();
        jLabel2 = new javax.swing.JLabel();

        setLayout(null);

        jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/Registrar16.gif"))); // NOI18N
        jButton1.setMnemonic('r');
        jButton1.setText("Registrar");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        add(jButton1);
        jButton1.setBounds(160, 90, 130, 30);

        jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/Modificar16.gif"))); // NOI18N
        jButton2.setMnemonic('m');
        jButton2.setText("Modificar ");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });
        add(jButton2);
        jButton2.setBounds(310, 90, 130, 30);

        jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/imagenes/Eliminar16.gif"))); // NOI18N
        jButton3.setMnemonic('e');
        jButton3.setText("Eliminar");
        jButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton3ActionPerformed(evt);
            }
        });
        add(jButton3);
        jButton3.setBounds(460, 90, 120, 30);

        tblServicios.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {
                "Código", "Descripción"
            }
        ) {
            boolean[] canEdit = new boolean [] {
                false, false
            };

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        jScrollPane1.setViewportView(tblServicios);

        add(jScrollPane1);
        jScrollPane1.setBounds(160, 140, 430, 230);

        jLabel2.setFont(new java.awt.Font("Arial", 0, 20));
        jLabel2.setForeground(new java.awt.Color(0, 102, 204));
        jLabel2.setText("MANTENIMIENTO DE SERVICIOS");
        add(jLabel2);
        jLabel2.setBounds(210, 40, 320, 30);
    }// </editor-fold>//GEN-END:initComponents

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
        // TODO add your handling code here:
        bandera=1;

        Nuevo_servicio nuevo_servicio= new Nuevo_servicio(this,bandera,codigo_usuario_auditoria);
        pnlNuevo_servicio=nuevo_servicio;
        pnlNuevo_servicio.setSize(741,400);
        this.setVisible(false);
        frmOperario.getPanelContenedor().add(pnlNuevo_servicio);
        pnlNuevo_servicio.repaint();
        pnlNuevo_servicio.setVisible(true);

    }//GEN-LAST:event_jButton1ActionPerformed
    public JPanel getPanelContenedorOperario()
    {
        return this.frmOperario.getPanelContenedor();
    }
    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
        // TODO add your handling code here:

        bandera=2;
        String cod;
         if(tblServicios.getSelectedRow()!=-1){
                    cod=(String)tblServicios.getValueAt(tblServicios.getSelectedRow(),0);
                    this.cargar_categoria_por_codigo(cod);

                }else{
                    JOptionPane.showMessageDialog(this,"Debe seleccionar un elemento de la tabla","Información", JOptionPane.WARNING_MESSAGE);
                }

}//GEN-LAST:event_jButton2ActionPerformed
    public void cargar_categoria_por_codigo(String codigo){
         String [] datos;
        Conexion c=new Conexion();
        datos=c.cargar_servicio_por_codigo(codigo);
        Nuevo_servicio nuevo_servicio_= new Nuevo_servicio(this,bandera,codigo_usuario_auditoria);
        pnlNuevo_servicio=nuevo_servicio_;
        nuevo_servicio_.setVcodigo(datos[0]);
        nuevo_servicio_.setVdescripcion(datos[1]);
        pnlNuevo_servicio.setSize(761, 400);
        frmOperario.getPanelContenedor().removeAll();
        frmOperario.getPanelContenedor().add(pnlNuevo_servicio);
        pnlNuevo_servicio.repaint();
        pnlNuevo_servicio.setVisible(false);
        pnlNuevo_servicio.setVisible(true);

    }
    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
        // TODO add your handling code here:
        this.eliminar_servicio();
}//GEN-LAST:event_jButton3ActionPerformed
public void mensaje_error_eliminacion_por_presencia_comprobante(){
        JOptionPane.showMessageDialog(this,"El servicio no puede ser eliminado ya que aparece en los comprobantes","Información", JOptionPane.WARNING_MESSAGE);

    }

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable tblServicios;
    // End of variables declaration//GEN-END:variables



}
